<?php

/***********************************************/
/*CONTENIDO*/
/***********************************************/
echo" <div class=\"pag_content\">
 	<div class=\"pag_content_title\">
		<div class=\"pag_title_cap\">Cap&iacute;tulo 11: </div>
		<div class=\"pag_title_cont\">Gesti&oacute;n de recursos</div>
    </div>
    <div class=\"pag_content_body\">         
	<div class=\"contenido_principal\">	
		<br />";
		
/***********************************************/
/*TITULO PARTE*/
/***********************************************/

echo"	<div class=\"parrafo_titulo\">
	Directivas de recursos 
	</div>";		

	
/***********************************************/
/*CONTENIDO*/
/***********************************************/

echo"
<div class=\"parrafo\" align=\"justify\">
Es el principio basico de los planes complejos son las directivas de recursos. Una plan de directivas asigna un grupo de abonados a un plan de recursos y define la utilizacion de recursos para cada una.
</div>
<div class=\"parrafo\" align=\"justify\">
Mostramos los diferentes metodos para la gestion de recursos:
</div>
<div class=\"parrafo\" align=\"justify\">
<strong>CPU</strong>: Hasta 8 niveles de priorizacion. Es decir el nivel dos adquiere CPU si el nivel 1 no esta disponible.
</div>
<div class=\"parrafo\" align=\"justify\">
<strong>Sesiones activas</strong>: Muestra el numero maximo de sesiones concurrentes para un grupo de usuarios. Si el numero maximo de sesiones es alcanzado la sesion entrante sera eplazada en una cola.
</div>
<div class=\"parrafo\" align=\"justify\">
<strong>Grado de paralelismo</strong>: Seria el parametro degree utilizado en sentencias de paralelismo.
</div>
<div class=\"parrafo\" align=\"justify\">
<strong>Automatic consumer group switching</strong>: Este metodo permite que sesiones de un determinado grupo que hayan escedido sus limitaciones poder conmutar a un grupo con prioridades mas bajas o incluso matar la sesion infractora.
</div>
<div class=\"parrafo\" align=\"justify\">
<strong>Canceling SQL and termination session</strong>: Este metodo permite que transacciones de larga duracion sean canceladas siempre y cuando hayan superado un limite.
</div>
<div class=\"parrafo\" align=\"justify\">
<strong>Execution time limit</strong>: Especifica el tiempo maximo de ejecucion de una query. Si Oracle estima que la operacion va a durar mas de lo cunfigurado, termina la transaccion y devuelve un error.
</div>
<div class=\"parrafo\" align=\"justify\">
<strong>Undo pool</strong>: Especifica la cantidad de undo que requiere una operacion. Si la cantidad de undo asignado es excedido se termina la operacion y ninguno de los miembros del grupo pueden ejecutar sentencias DML hasta que el espacio de UNDO sea liberado.
</div>
<div class=\"parrafo\" align=\"justify\">
<strong>Idle time limit</strong>: Indica la cantidad de tiempo que permite que una sesion se quede en estado idle. Este metodo permite que se maten a sesiones que estan bloqueando otras.
</div>
<div class=\"parrafo\" align=\"justify\">
Directivas de recursos permiten asignar estos metodos a diferentes grupos de usuarios o a diferentes sub-planes.
</div>
<h3>
1. Crear Directivas de recursos
</h3>
<div class=\"parrafo\" align=\"justify\">
Paquete: DBMS_RESOURCE_MANAGER.<br />
Funcion: create_plan_directive<br />
Atributos:
<div class=\"parrafo_lista_sub\">
	-- PLAN: Nombre del plan al que aplican estas directivas.<br />
	-- GROUP_OR_SUBPLAN: El nombre del grupo de usuarios o sub-plan para el que se aplica estas directivas.<br />
	-- COMMENT.<br />
	-- CPU_P[1..8]: Porcentaje de CPU asignado a diferentes niveles.<br />
	-- ACTIVE_SESS_POOL_P1: Numero maximo de sesiones concurrentes por grupo.<br />
	-- QUEUEING_P1: Tiempo maximo en el que puede permanecer un job en estado idle antes de terminarse. NULL por defecto.<br />
	-- PARALLEL_DEGREE_LIMIT_P1: Maximo degree de paralelismo.<br />
	-- SWITCH_GROUP: El grupo al que se cunmutara si una sesion de un grupo incumple alguna de las condiciones, otras opciones serian CANCEL_SQL o KILL_SESSION.<br />
	-- SWITCH_TIME: Tiempo maximo que una sesion puede incumplir una condicion antes de que pueda ser conmutada.<br />
	-- MAX_EST_EXEC_TIME: Tiempo estimado por Oracle para la ejecucion de una query. Si el tiempo excede se devuelve un ORA-07455.<br />
	-- UNDO_POOL: Maximo numero de kilo bytes destinado al espacio de UNDO.<br />
	-- MAX_IDLE_TIME: Tiempo maximo en el que una sesion puede estar en estado idle.<br />
	-- MAX_IDLE_BLOCKER_TIME: Tiempo maximo que una sesion que bloquea a otra puede permenecer en estado idle.
</div>
</div>
<div class=\"parrafo\" align=\"justify\">	
Ejemplo:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>SQL&GT;exec DBMS_RESOURCE_MANAGER.create_plan_directive(
	PLAN				=>'DIARIO',
	GROUP_OR_SUBPLAN	=>'Ventas',
	PARALLEL_DEGREE_LIMIT_P1	=> 20);

</p></pre></blockquote>
<div class=\"parrafo\" align=\"justify\">
Para actualizar directivas haremos
</div>
<div class=\"parrafo\" align=\"justify\">
Ejemplo:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>SQL&GT; exec DBMS_RESOURCE_MANAGER.update_plan_directive(
	PLAN		=>'DIARIO',
	GROUP_OR_SUBPLAN	=>'Ventas',
	PARALLEL_DEGREE_LIMIT_P1	=> 10);

</p></pre></blockquote>
<div class=\"parrafo\" align=\"justify\">
Para borrar directivas haremos
</div>
<div class=\"parrafo\" align=\"justify\">
Ejemplo
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>SQL&GT; exec DBMS_RESOURCE_MANAGER.delete_plan_directive(
	PLAN		=>'DIARIO',
	GROUP_OR_SUBPLAN	=>'Ventas');

</p></pre></blockquote>

";
	
echo"
	</div> 		 
    </div>
    <div class=\"pag_content_footer\">
    </div>
    <div class=\"pag_content_nav\">		
		<div class=\"pag_contenido_left\">
			<a class=\"cap_next\" href=\"ocp_main.php?cap=11&part=3\">	&lt; Anterior </a>
		 </div>
		<div class=\"pag_contenido_right\" align=\"right\">	
			<a  class=\"cap_next\" href=\"ocp_main.php?cap=11&part=5\">	Siguiente &gt;</a>
		 </div>
	</div>      
</div>
";


?>